package com.yc.javaee.tomcat.impl;

import com.yc.javaee.tomcat.HttpServletRequest;
import com.yc.javaee.tomcat.HttpServletResponse;
import com.yc.javaee.tomcat.ServletException;

import javax.servlet.annotation.WebServlet;
import java.io.IOException;

/**
 * 响应重定向:
 *  请求转发和响应重定向的区别:
 *  1. 请求转发地址栏不变, 响应重定向地址栏变化
 *  2. 请求转发是服务器内部跳转(与http无关),
 *      响应重定向是浏览器端跳转( 与http有关);
 *
 *  响应重定向过程:
 *      1. 向浏览器发出 3xx 响应码: 302   301会被浏览器缓存
 *          同时在响应头域中写入 Location 字段, 记录要跳转的页面地址
 *      2. 浏览器接收到 3xx 响应码: 那么就会发起第二次请求
 *          地址栏发生变化
 *
 */
@WebServlet("/redirect.s")
public class RedirectServlet extends HttpServletImpl{
    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
        response.sendRedirect("index.html");
    }
}
